package com.ccp.dev.qbdms.model;

import com.ccp.dev.qbdms.expimp.annotation.ExpAnnotation;
import com.ccp.dev.qbdms.expimp.annotation.FlowSubject;
import com.ccp.dev.qbdms.expimp.annotation.ImpAnnotation;
import com.ccp.dev.qbdms.expimp.annotation.Record;

import java.util.Date;
import java.util.List;

/**
 * 飞行试验管理表 w_qbd_flight_test
 *
 * @author hjx
 * @date 2020-05-07 15:28:26
 */
@ExpAnnotation(description = "飞行试验")
@ImpAnnotation(description = "飞行试验")
@FlowSubject(subjectName = "飞行试验")
public class WQbdFlightTest extends BaseBusinessModel<WQbdFlightTest> {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private String id;
    /**
     * 试验名称
     */
    @Record("试验名称")
    @ImpAnnotation(description = "试验名称", isRequired = true)
    @ExpAnnotation(description = "试验名称")
    private String fTestname;
    /**
     * 进场标识
     */
    @Record("进场标识")
    @ImpAnnotation(description = "进场标识", isRequired = true)
    @ExpAnnotation(description = "进场标识")
    private String fEntrysign;
    /**
     * 入档编号
     */
    @Record("入档编号")
    @ImpAnnotation(description = "入档编号", isRequired = true)
    @ExpAnnotation(description = "入档编号")
    private String fFilingnumber;
    /**
     * 型号名称
     */
    @Record("型号名称")
    @ImpAnnotation(description = "型号名称", isRequired = true)
    @ExpAnnotation(description = "型号名称")
    private String fModelnmae;
    /**
     * 型号代号
     */
    @Record("型号代号")
    @ImpAnnotation(description = "型号代号", isRequired = true)
    @ExpAnnotation(description = "型号代号")
    private String fModelsymbol;
    /**
     * 型号类型
     */
    @Record("型号类型")
    @ImpAnnotation(description = "型号类型", dicKey = "xhlx", isRequired = true)
    @ExpAnnotation(description = "型号类型")
    private String fModeltype;
    /**
     * 型号批次
     */
    @Record("型号批次")
    @ImpAnnotation(description = "型号批次")
    @ExpAnnotation(description = "型号批次")
    private String fModelbatchno;
    /**
     * 技术状态
     */
    @Record("技术状态")
    @ImpAnnotation(description = "技术状态")
    @ExpAnnotation(description = "技术状态")
    private String fTechnicalstatus;
    /**
     * 型号研制阶段
     */
    @Record("型号研制阶段")
    @ImpAnnotation(description = "型号研制阶段", dicKey = "xhyzjd", isRequired = true)
    @ExpAnnotation(description = "型号研制阶段")
    private String fModeldevelopphase;
    /**
     * 总体单位
     */
    @Record("总体单位")
    @ImpAnnotation(description = "总体单位")
    @ExpAnnotation(description = "总体单位")
    private String fPopulationunit;
    /**
     * 总装单位
     */
    @Record("总装单位")
    @ImpAnnotation(description = "总装单位")
    @ExpAnnotation(description = "总装单位")
    private String fGeneralunit;
    /**
     * 试验代号
     */
    @Record("试验代号")
    @ImpAnnotation(description = "试验代号")
    @ExpAnnotation(description = "试验代号")
    private String fTestcode;
    /**
     * 试验性质
     */
    @Record("试验性质")
    @ImpAnnotation(description = "试验性质", dicKey = "syxz", isRequired = true)
    @ExpAnnotation(description = "试验性质")
    private String fTestphase;
    /**
     * 导弹编号
     */
    @Record("导弹编号")
    @ImpAnnotation(description = "导弹编号", isRequired = true)
    @ExpAnnotation(description = "导弹编号")
    private String fMissilenumber;
    /**
     * 试验地点
     */
    @Record("试验地点")
    @ImpAnnotation(description = "试验地点")
    @ExpAnnotation(description = "试验地点")
    private String fTestplace;
    /**
     * 试验日期
     */
    @Record("试验日期")
    @ImpAnnotation(description = "试验日期", isRequired = true)
    @ExpAnnotation(description = "试验日期")
    private Date fTestdate;
    /**
     * 发射日期
     */
    @Record("发射日期")
    @ImpAnnotation(description = "发射日期", isRequired = true)
    @ExpAnnotation(description = "发射日期")
    private Date fLaunchdate;
    /**
     * 发射情况
     */
    @Record("发射情况")
    @ImpAnnotation(description = "发射情况", dicKey = "fsqk", isRequired = true)
    @ExpAnnotation(description = "发射情况")
    private String fLaunchstatus;
    /**
     * 飞行结果
     */
    @Record("飞行结果")
    @ImpAnnotation(description = "飞行结果", dicKey = "fxjg")
    @ExpAnnotation(description = "飞行结果")
    private String fFlightresult;
    /**
     * 报送号
     */
    private String fReportnumber;
    /**
     * 飞行试验问题数
     */
    @Record("飞行试验问题数")
    @ImpAnnotation(description = "飞行试验问题数", isRequired = true)
    @ExpAnnotation(description = "飞行试验问题数")
    private String fFlighttestproblems;
    /**
     * 试验情况
     */
    @Record("试验情况")
    @ImpAnnotation(description = "试验情况")
    @ExpAnnotation(description = "试验情况")
    private String fTeststatus;
    /**
     * 剔除依据
     */
    @Record("剔除依据")
    @ImpAnnotation(description = "剔除依据")
    @ExpAnnotation(description = "剔除依据")
    private String fExclusionbasis;
    /**
     * 失利原因
     */
    @Record("失利原因")
    @ImpAnnotation(description = "失利原因")
    @ExpAnnotation(description = "失利原因")
    private String fFailurereason;
    /**
     * 是否进行奖励
     */
    @Record("是否进行奖励")
    @ImpAnnotation(description = "是否进行奖励", dicKey = "sf")
    @ExpAnnotation(description = "是否进行奖励")
    private String fAward;
    /**
     * 类别
     */
    @Record("类别")
    @ImpAnnotation(description = "类别")
    @ExpAnnotation(description = "类别")
    private String fType;
    /**
     * 奖励总金额
     */
    @Record("奖励总金额")
//    @ImpAnnotation(description = "奖励总金额")
    @ExpAnnotation(description = "奖励总金额")
    private String fTotalmoney;
    /**
     * 奖励原因
     */
    @Record("奖励原因")
    private String fAwardreason;
    /**
     * 质量奖惩主键
     */
    private String fRewardpunid;
    /**
     * 认定情况
     */
    @Record("认定情况")
    @ImpAnnotation(description = "认定情况")
    @ExpAnnotation(description = "认定情况")
    private String fIdentification;
    /**
     * 所属单位
     */
    private String belongdeptname;
    /**
     * 状态名称（已废弃）
     */
    private String fStatus;
    /**
     * 流程运行ID
     */
    private String runId;
    /**
     * 子表
     */
    @Record("子表")
    @ImpAnnotation(description = "子表", isSubTable = true)
    @ExpAnnotation(description = "子表", isSubTable = true)
    private List<WQbdFlighttestChild> wQbdFlighttestChildren;

    public List<WQbdFlighttestChild> getwQbdFlighttestChildren() {
        return wQbdFlighttestChildren;
    }

    public void setwQbdFlighttestChildren(List<WQbdFlighttestChild> wQbdFlighttestChildren) {
        this.wQbdFlighttestChildren = wQbdFlighttestChildren;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }


    public String getfTestname() {
        return fTestname;
    }

    public void setfTestname(String fTestname) {
        this.fTestname = fTestname;
    }

    public String getfEntrysign() {
        return fEntrysign;
    }

    public void setfEntrysign(String fEntrysign) {
        this.fEntrysign = fEntrysign;
    }

    public String getfFilingnumber() {
        return fFilingnumber;
    }

    public void setfFilingnumber(String fFilingnumber) {
        this.fFilingnumber = fFilingnumber;
    }

    public String getfModelnmae() {
        return fModelnmae;
    }

    public void setfModelnmae(String fModelnmae) {
        this.fModelnmae = fModelnmae;
    }

    public String getfModelsymbol() {
        return fModelsymbol;
    }

    public void setfModelsymbol(String fModelsymbol) {
        this.fModelsymbol = fModelsymbol;
    }

    public String getfModeltype() {
        return fModeltype;
    }

    public void setfModeltype(String fModeltype) {
        this.fModeltype = fModeltype;
    }

    public String getfModelbatchno() {
        return fModelbatchno;
    }

    public void setfModelbatchno(String fModelbatchno) {
        this.fModelbatchno = fModelbatchno;
    }

    public String getfTechnicalstatus() {
        return fTechnicalstatus;
    }

    public void setfTechnicalstatus(String fTechnicalstatus) {
        this.fTechnicalstatus = fTechnicalstatus;
    }

    public String getfModeldevelopphase() {
        return fModeldevelopphase;
    }

    public void setfModeldevelopphase(String fModeldevelopphase) {
        this.fModeldevelopphase = fModeldevelopphase;
    }

    public String getfPopulationunit() {
        return fPopulationunit;
    }

    public void setfPopulationunit(String fPopulationunit) {
        this.fPopulationunit = fPopulationunit;
    }

    public String getfGeneralunit() {
        return fGeneralunit;
    }

    public void setfGeneralunit(String fGeneralunit) {
        this.fGeneralunit = fGeneralunit;
    }

    public String getfTestcode() {
        return fTestcode;
    }

    public void setfTestcode(String fTestcode) {
        this.fTestcode = fTestcode;
    }

    public String getfTestphase() {
        return fTestphase;
    }

    public void setfTestphase(String fTestphase) {
        this.fTestphase = fTestphase;
    }

    public String getfMissilenumber() {
        return fMissilenumber;
    }

    public void setfMissilenumber(String fMissilenumber) {
        this.fMissilenumber = fMissilenumber;
    }

    public String getfTestplace() {
        return fTestplace;
    }

    public void setfTestplace(String fTestplace) {
        this.fTestplace = fTestplace;
    }

    public Date getfTestdate() {
        return fTestdate;
    }

    public void setfTestdate(Date fTestdate) {
        this.fTestdate = fTestdate;
    }

    public Date getfLaunchdate() {
        return fLaunchdate;
    }

    public void setfLaunchdate(Date fLaunchdate) {
        this.fLaunchdate = fLaunchdate;
    }

    public String getfLaunchstatus() {
        return fLaunchstatus;
    }

    public void setfLaunchstatus(String fLaunchstatus) {
        this.fLaunchstatus = fLaunchstatus;
    }

    public String getfFlightresult() {
        return fFlightresult;
    }

    public void setfFlightresult(String fFlightresult) {
        this.fFlightresult = fFlightresult;
    }

    public String getfReportnumber() {
        return fReportnumber;
    }

    public void setfReportnumber(String fReportnumber) {
        this.fReportnumber = fReportnumber;
    }

    public String getfFlighttestproblems() {
        return fFlighttestproblems;
    }

    public void setfFlighttestproblems(String fFlighttestproblems) {
        this.fFlighttestproblems = fFlighttestproblems;
    }

    public String getfTeststatus() {
        return fTeststatus;
    }

    public void setfTeststatus(String fTeststatus) {
        this.fTeststatus = fTeststatus;
    }

    public String getfExclusionbasis() {
        return fExclusionbasis;
    }

    public void setfExclusionbasis(String fExclusionbasis) {
        this.fExclusionbasis = fExclusionbasis;
    }

    public String getfFailurereason() {
        return fFailurereason;
    }

    public void setfFailurereason(String fFailurereason) {
        this.fFailurereason = fFailurereason;
    }

    public String getfAward() {
        return fAward;
    }

    public void setfAward(String fAward) {
        this.fAward = fAward;
    }

    public String getfType() {
        return fType;
    }

    public void setfType(String fType) {
        this.fType = fType;
    }

    public String getfTotalmoney() {
        return fTotalmoney;
    }

    public void setfTotalmoney(String fTotalmoney) {
        this.fTotalmoney = fTotalmoney;
    }

    public String getfAwardreason() {
        return fAwardreason;
    }

    public void setfAwardreason(String fAwardreason) {
        this.fAwardreason = fAwardreason;
    }

    @Override
    public String getBelongdeptname() {
        return belongdeptname;
    }

    @Override
    public void setBelongdeptname(String belongdeptname) {
        this.belongdeptname = belongdeptname;
    }

    public String getfRewardpunid() {
        return fRewardpunid;
    }

    public void setfRewardpunid(String fRewardpunid) {
        this.fRewardpunid = fRewardpunid;
    }

    public String getfIdentification() {
        return fIdentification;
    }

    public void setfIdentification(String fIdentification) {
        this.fIdentification = fIdentification;
    }


    public String getfStatus() {
        return fStatus;
    }

    public void setfStatus(String fStatus) {
        this.fStatus = fStatus;
    }

    public String getRunId() {
        return runId;
    }

    public void setRunId(String runId) {
        this.runId = runId;
    }

    @Override
    public String toString() {
        return "WQbdFlightTest{" +
                "id='" + id + '\'' +
                ", fTestname='" + fTestname + '\'' +
                ", fEntrysign='" + fEntrysign + '\'' +
                ", fFilingnumber='" + fFilingnumber + '\'' +
                ", fModelnmae='" + fModelnmae + '\'' +
                ", fModelsymbol='" + fModelsymbol + '\'' +
                ", fModeltype='" + fModeltype + '\'' +
                ", fModelbatchno='" + fModelbatchno + '\'' +
                ", fTechnicalstatus='" + fTechnicalstatus + '\'' +
                ", fModeldevelopphase='" + fModeldevelopphase + '\'' +
                ", fPopulationunit='" + fPopulationunit + '\'' +
                ", fGeneralunit='" + fGeneralunit + '\'' +
                ", fTestcode='" + fTestcode + '\'' +
                ", fTestphase='" + fTestphase + '\'' +
                ", fMissilenumber='" + fMissilenumber + '\'' +
                ", fTestplace='" + fTestplace + '\'' +
                ", fTestdate=" + fTestdate +
                ", fLaunchdate=" + fLaunchdate +
                ", fLaunchstatus='" + fLaunchstatus + '\'' +
                ", fFlightresult='" + fFlightresult + '\'' +
                ", fReportnumber='" + fReportnumber + '\'' +
                ", fFlighttestproblems='" + fFlighttestproblems + '\'' +
                ", fTeststatus='" + fTeststatus + '\'' +
                ", fExclusionbasis='" + fExclusionbasis + '\'' +
                ", fFailurereason='" + fFailurereason + '\'' +
                ", fAward='" + fAward + '\'' +
                ", fType='" + fType + '\'' +
                ", fTotalmoney='" + fTotalmoney + '\'' +
                ", fAwardreason='" + fAwardreason + '\'' +
                ", fRewardpunid='" + fRewardpunid + '\'' +
                ", fIdentification='" + fIdentification + '\'' +
                ", belongdeptname='" + belongdeptname + '\'' +
                ", fStatus='" + fStatus + '\'' +
                ", runId='" + runId + '\'' +
                ", wQbdFlighttestChildren=" + wQbdFlighttestChildren +
                ", createBy='" + createBy + '\'' +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", updateBy='" + updateBy + '\'' +
                ", tenantId='" + tenantId + '\'' +
                '}';
    }
}
